home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tiger Disk 18
/
Tiger_Disk_018_19xx_Tiger-Crew-Disk_de_Side_A.d64
/
sort. directory
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2023-02-26
|
2KB
|
68 lines
10 rem * sortiertes directory *
20 poke53281,11:poke53280,11:poke53272,21:print"[147][159]"
30 ifzz=999then380
40 zz=999
50 printtab(10)"sortiertes directory"
60 printtab(10)"--------------------"
70 printtab(17)"moment"
80 printtab(12)"daten werden von"
90 printtab(12)"diskette gelesen"
100 printtab(12)"und sortiert !!!"
110 open8,8,0,"$":open4,4,0:g$=chr$(34):bl$=" ":p$=chr$(9)
120 dimd$(128),f$(128),d%(128),g%(128):n=-1
130 get#8,a$:ifa$=""then230
140 n=n+1:get#8,a$:get#8,a$:get#8,b$:ifa$<>""theng%(n)=asc(a$)
150 ifb$<>""theng%(n)=g%(n)+asc(b$)*256
160 get#8,a$:ifa$=""andn<>0then230
170 ifa$<>g$then160
180 get#8,a$:ifa$<>g$thend$(n)=d$(n)+a$:goto180
190 get#8,a$:ifa$=bl$then190
200 f$(n)=a$
210 get#8,a$:ifa$<>""then210
220 goto130
230 n=n-1:close8:fori=1ton:d%(i)=i:next
240 l=int((n)/2)+1:r=n
250 ifl>1then290
260 ifr<=1then280
270 h=d%(l):d%(l)=d%(r):d%(r)=h:r=r-1
280 goto300
290 l=l-1
300 i=l:j=2*i:h=d%(i):h$=d$(h):ifj>rthen370
310 ifj>=rthen340
320 ifd$(d%(j))>=d$(d%(j+1))then340
330 j=j+1
340 ifj>rthen370
350 ifh$>=d$(d%(j))then370
360 d%(i)=d%(j):i=j:j=2*i:goto310
370 d%(i)=h:ifr<>1then250
380 z=1:a=1:b=21:ifb>nthenb=n
390 gosub540:print" "d$(0)"[146]"
400 fori=atob:printg%(d%(i))tab(5)d$(d%(i))tab(23)f$(d%(i)):next
410 print""g%(n+1);"[146] freie bloecke";
420 geta$:ifa$=""then420
430 x=asc(a$)-132:ifx<1orx>4then420
440 onxgoto450,480,500,510
450 a=a-20:ifa<1thena=1
460 b=a+20:ifb>nthenb=n
470 goto390
480 a=a+20:ifa>nthena=n
490 goto460
500 print"[147]tschuess":end
510 print#4,chr$(14)d$(0):print#4,chr$(27);"d";chr$(6);chr$(26);chr$(0)
520 fori=1ton:gg$=str$(g%(d%(i))):print#4,gg$spc(5-len(gg$))p$d$(d%(i));
525 print#4,spc(20-len(d$(d%(i))))p$f$(d%(i)):next
530 print#4:print#4,g%(n+1)" bloecke frei":print#4:goto420
540 print"[147]"
550 printtab(32)"f1[146]"
560 printtab(28)"rueckwaerts"
570 printtab(29)"blaettern"
580 printtab(32)"f3"
590 printtab(29)"vorwaerts"
600 printtab(29)"blaettern"
610 printtab(32)"f5"
620 printtab(31)"ende"
630 printtab(32)"f7"
640 printtab(30)"ausgabe"
650 printtab(30)"drucker"
660 return